﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace OpGen.Extensions
{
    /// <summary>
    /// Wird ausgelöst wenn ein Fehler innerhalb der OpGen Extensions ausgelöst wird
    /// </summary>
    [Serializable]
    public class OpGenException : Exception
    {
        /// <summary>
        /// Erstellt eine neue Instanz der OpGenException-Klasse
        /// </summary>
        public OpGenException()
        { }

        /// <summary>
        /// Erstellt eine neue Instanz der OpGenException-Klasse
        /// </summary>
        /// <param name="message">Die Fehlermeldung</param>
        public OpGenException(string message)
            : base(message)
        { }

        /// <summary>
        /// Erstellt eine neue Instanz der OpGenException-Klasse
        /// </summary>
        /// <param name="message">Die Fehlermeldung</param>
        /// <param name="inner">Eine System-Exception die weitergereicht wird</param>
        public OpGenException(string message, Exception inner)
            : base(message, inner)
        { }

        /// <summary>
        /// Erstellt eine neue Instanz der OpGenException-Klasse
        /// </summary>
        /// <param name="info">NA</param>
        /// <param name="context">NA</param>
        protected OpGenException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
            : base(info, context)
        { }
    }
}
